﻿using System;
using System.Data;
using System.Configuration;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Web;
using Ext.Net;
using Button = Ext.Net.Button;

namespace entgp.Code
{
    public static class UtilP
    {
        public static string RUTA_HOME = string.Format("{0}{1}", ConfigurationManager.AppSettings.Get("PathServer"), "");
        public static string RUTA_ARCHIVOS = string.Format("{0}{1}", ConfigurationManager.AppSettings.Get("PathServer"), ConfigurationManager.AppSettings.Get("PathFiles"));
        //public static string RUTA_ARCHIVOS_EMPRESA = string.Format("{0}/resources/empresas/{1}/resources/", ConfigurationManager.AppSettings.Get("SD"), new LeerSession().ValorSession);
        //public static string RUTA_ARCHIVOS_EMPRESA_GLOBAL = string.Format("{0}/resources/empresas/", ConfigurationManager.AppSettings.Get("SD"));
        public static void MostrarNotificacion(string msg, string title, MessageBox.Icon ico)
        {
            X.Msg.Show(new MessageBoxConfig
            {
                Title = title,
                Message = msg,
                Buttons = MessageBox.Button.OK,
                Icon = ico
            });
        }
        public static string FormarNombre(string nombre)
        {
            string nuevoNombre = "";
            var lista = nombre.Split('\\');
            nombre = lista[lista.Length - 1];
            Random rnd = new Random();
            nombre = nombre.Replace("\\", "").Replace(" ", "").Replace(":", "");
            foreach (var letra in nombre)
            {

                if ((letra >= 65 && letra <= 90) || (letra >= 97 && letra <= 122) || letra == '.' || char.IsDigit(letra))
                {
                    nuevoNombre = nuevoNombre + letra;
                }
            }
            nombre = nuevoNombre;
            nombre = nombre.Insert(0, rnd.Next(1000).ToString());
            return nombre;
        }

        public static bool CompruebaIngreso(int ns)
        {
            try
            {
                if (ns == 0)
                    return false;
                else
                    return true;
            }
            catch
            {
                return false;
            }
        }
    }

    public class UtilRA
    {
        public string RutaLeerArchivosEmpresa
        {
            // return string.Format("{0}{1}/{2}", ConfigurationManager.AppSettings.Get("PathServer"), new LeerSession().ValorSession, ConfigurationManager.AppSettings.Get("PathFiles"));
            get
            {
                return string.Format("{0}/resources/empresas/{1}/{2}", ConfigurationManager.AppSettings.Get("PathServer"), new LeerSession().ValorSession, ConfigurationManager.AppSettings.Get("PathFiles"));
            }
        }
        public string RutaArchivosEmpresa
        {
            get
            {
                return string.Format("{0}/resources/empresas/{1}/resources/", ConfigurationManager.AppSettings.Get("SD"), new LeerSession().ValorSession);
            }
        }
        public string RutaArchivosEmpresaGlobal
        {
            get
            {
                return string.Format("{0}/resources/empresas/", ConfigurationManager.AppSettings.Get("SD"));
            }
        }
    }
    public class ControlesUsuario:System.Web.UI.UserControl
    {
        protected int IdEmp
        {
            get
            {
                try
                {
                    int idEmpresa;
                    int.TryParse(Session["CodigoEmp"].ToString(), out idEmpresa);
                    return (idEmpresa);
                }
                catch (Exception ex)
                {
                    X.Msg.Show(new MessageBoxConfig
                    {
                        Title = "Aviso",
                        Message = "Su sessión ha expirado, ingrese nuevamente",
                        Buttons = MessageBox.Button.OK,
                        Icon = MessageBox.Icon.WARNING
                    }); 
                    //X.Js.Alert("Su sessión ha expirado, ingrese nuevamente");
                }


                return -1;
            }
        }
    }

    public class PaginasUsuario:System.Web.UI.Page
    {
        protected int IdEmp
        {
            get
            {
                try
                {
                    int idEmpresa;
                    int.TryParse(Session["CodigoEmp"].ToString(), out idEmpresa);
                    return (idEmpresa);
                }
                catch (Exception ex)
                {
                    X.Msg.Show(new MessageBoxConfig
                    {
                        Title = "Aviso",
                        Message = "Su sessión ha expirado, ingrese nuevamente",
                        Buttons = MessageBox.Button.OK,
                        Icon = MessageBox.Icon.WARNING
                    });
                    //X.Js.Alert("Su sessión ha expirado, ingrese nuevamente");
                }


                return -1;
            }
        }
    }
}
